home *** CD-ROM | disk | FTP | other *** search
/ World of Video / World of Video.iso / gfxprograms / boards / misc / cybershare / devdocs / autodoc / cybergraphics.doc < prev   
Encoding:
Text File  |  1995-02-13  |  25.6 KB  |  824 lines

  1. TABLE OF CONTENTS
  2.  
  3. cybergraphics.library/AllocCModeListTagList
  4. cybergraphics.library/BestCModeIDTagList
  5. cybergraphics.library/CModeRequestTagList
  6. cybergraphics.library/DoCDrawMethodTagList
  7. cybergraphics.library/FillPixelArray
  8. cybergraphics.library/FreeCModeList
  9. cybergraphics.library/GetCyberMapAttr
  10. cybergraphics.library/GetCyberIDAttr
  11. cybergraphics.library/IsCyberModeID
  12. cybergraphics.library/MovePixelArray
  13. cybergraphics.library/ReadPixelArray
  14. cybergraphics.library/ReadRGBPixel
  15. cybergraphics.library/ScalePixelArray
  16. cybergraphics.library/SwapPixelArray
  17. cybergraphics.library/WritePixelArray
  18. cybergraphics.library/WriteRGBPixel
  19. cybergraphics.lib/AllocCModeListTagList cybergraphics.lib/AllocCModeListTagList
  20.  
  21.  
  22.    NAME
  23.     AllocCModeListTagList -- get an exec list with requested modes.
  24.  
  25.    SYNOPSIS
  26.     result = CModeRequestTagList(ModeListTags);
  27.     D0                                A1
  28.  
  29.     APTR AllocCModeListTagList(struct TagItem *);
  30.  
  31.    FUNCTION
  32.     Allocates a list structure which contains all requested modes (All nodes
  33.     are of type CyberModeNode). See defines for more information about the
  34.     structure of this nodes.
  35.  
  36.    INPUTS
  37.     tags - pointer to an optional tag list which may be used to
  38.            control the number of returned modes.
  39.  
  40.    TAGS
  41.  
  42.     Tags available are:
  43.  
  44.     CYBRMREQ_MinWidth (ULONG) - The minimum display width to let the user
  45.             choose. Default is 320.
  46.  
  47.     CYBRMREQ_MaxWidth (ULONG) - The maximum display width to let the user
  48.             choose. Default is 1600.
  49.  
  50.     CYBRMREQ_MinHeight (ULONG) - The minimum display height to let the user
  51.             choose. Default is 240.
  52.  
  53.     CYBRMREQ_MaxHeight (ULONG) - The maximum display height to let the user
  54.             choose. Default is 1200.
  55.  
  56.     CYBRMREQ_MinDepth (UWORD) - The minimum display depth to let the user
  57.             choose. Default is 8.
  58.  
  59.     CYBRMREQ_MaxDepth (UWORD) - The maximum display depth to let the user
  60.             choose. Default is 32.
  61.  
  62.     CYBRMREQ_CModelArray (UWORD *) - Array of color models which should be
  63.             available for screenmode selection. Currently supported
  64.             colormodels are:
  65.  
  66.             PIXFMT_LUT8
  67.             PIXFMT_RGB15
  68.             PIXFMT_BGR15
  69.             PIXFMT_RGB15PC
  70.             PIXFMT_BGR15PC
  71.             PIXFMT_RGB16
  72.             PIXFMT_BGR16
  73.             PIXFMT_RGB16PC
  74.             PIXFMT_BGR16PC
  75.             PIXFMT_RGB24
  76.             PIXFMT_BGR24
  77.             PIXFMT_ARGB32
  78.             PIXFMT_BGRA32
  79.  
  80.             default is all colormodels available, nothing filtered
  81.  
  82.    RESULT
  83.     result - 0 if no modes are available, a pointer to a exec list if there
  84.          are modes which fit your needs.
  85. cybergraphics.library/BestCyberModeID   cybergraphics.library/BestCyberModeID
  86.  
  87.  
  88.    NAME
  89.     BestCModeIDTagList  -- calculate the best ModeID with given parameters
  90.  
  91.    SYNOPSIS
  92.     ID = BestCModeIDTagList(TagItems)
  93.     d0                     a0
  94.  
  95.     ID = BestCModeIDTagList(Tag1, ...)
  96.  
  97.    FUNCTION
  98.     To determine the best cybergraphics ModeID to fit the parameters set
  99.     in the TagList.
  100.  
  101.    INPUTS
  102.     TagItems - A pointer to an array of TagItems.
  103.  
  104.    TAGS
  105.  
  106.         CYBRBIDTG_Depth (ULONG) - depth the returned ModeID must support
  107.                                   Default is 8
  108.  
  109.         CYBRBIDTG_NominalWidth (UWORD),
  110.         CYBRBIDTAG_NominalHeight (UWORD) - desired width and height the ModeID
  111.                                            should have
  112.  
  113.         CYBRBIDTG_MonitorID (ULONG) - if multiple graphics boards are
  114.                                       installed in the system, you can choose
  115.                                       the desired one with this tag
  116.  
  117.    RESULT
  118.     ID      - ID of the best mode to use, or INVALID_ID if a match could
  119.               not be found.
  120.  
  121. cybergraphics.lib/CModeRequestTagList    cybergraphics.lib/CModeRequestTagList
  122.  
  123.  
  124.    NAME
  125.     CModeRequestTagList -- get screenmode from user using a requester.
  126.  
  127.    SYNOPSIS
  128.     result = CModeRequestTagList(requester,tags);
  129.     D0                            A0        A1
  130.  
  131.     LONG CModeRequestTagList(APTR,struct TagItem *);
  132.  
  133.    FUNCTION
  134.     Prompts the user for input by showing all available cybergraphics
  135.     screenmodes in a requester.
  136.     If the user cancels or the system aborts the request, FALSE is returned,
  137.     otherwise the displaymode id of the selected screenmode.
  138.  
  139.    INPUTS
  140.     requester - not used currently. you have to set it to 0 !
  141.     tags - pointer to an optional tag list which may be used to
  142.            control features of the requester.
  143.  
  144.    TAGS
  145.  
  146.     Tags used for the screen mode requester
  147.  
  148.     CYBRMREQ_Screen (struct Screen *) - Screen on which to open the requester.
  149.             default locale will be used.
  150.  
  151.     CYBRMREQ_WinTitle (STRPTR) - Title to use for the requesting window.
  152.  
  153.     CYBRMREQ_OKText (STRPTR) - Label of the positive gadget in the
  154.             requester. English default is "OK".
  155.  
  156.     CYBRMREQ_CancelText (STRPTR) - Label of the negative gadget in the
  157.             requester. English default is "Cancel".
  158.  
  159.     CYBRMREQ_MinWidth (ULONG) - The minimum display width to let the user
  160.             choose. Default is 320.
  161.  
  162.     CYBRMREQ_MaxWidth (ULONG) - The maximum display width to let the user
  163.             choose. Default is 1600.
  164.  
  165.     CYBRMREQ_MinHeight (ULONG) - The minimum display height to let the user
  166.             choose. Default is 240.
  167.  
  168.     CYBRMREQ_MaxHeight (ULONG) - The maximum display height to let the user
  169.             choose. Default is 1200.
  170.  
  171.     CYBRMREQ_MinDepth (UWORD) - The minimum display depth to let the user
  172.             choose. Default is 8.
  173.  
  174.     CYBRMREQ_MaxDepth (UWORD) - The maximum display depth to let the user
  175.             choose. Default is 32.
  176.  
  177.     CYBRMREQ_CModelArray (UWORD *) - Array of color models which should be
  178.             available for screenmode selection. Currently supported
  179.             colormodels are:
  180.  
  181.             PIXFMT_LUT8
  182.             PIXFMT_RGB15
  183.             PIXFMT_BGR15
  184.             PIXFMT_RGB15PC
  185.             PIXFMT_BGR15PC
  186.             PIXFMT_RGB16
  187.             PIXFMT_BGR16
  188.             PIXFMT_RGB16PC
  189.             PIXFMT_BGR16PC
  190.             PIXFMT_RGB24
  191.             PIXFMT_BGR24
  192.             PIXFMT_ARGB32
  193.             PIXFMT_BGRA32
  194.  
  195.             default is all colormodels available, nothing filtered
  196.  
  197.    RESULT
  198.     result - 0 if the user cancelled the requester or if something
  199.          prevented the requester from opening. If != 0 the displaymode
  200.          id of the selected screenmode is returned.
  201.  
  202.    BUGS
  203.     The requester structure is not supported in (v40)
  204. cybergraphics.lib/DoCDrawMethodTagList cybergraphics.lib/DoCDrawMethodTagList
  205.  
  206.  
  207.    NAME
  208.     DoCDrawMethodTagList - Do the given hook for the supplied rastport
  209.  
  210.    SYNOPSIS
  211.     DoCDrawMethodTagList(hook,rport,taglist)
  212.                           a0   a1    a2
  213.  
  214.     void DoCDrawMethodTagList(struct Hook *,struct RastPort *,
  215.                 struct TagItem *)
  216.  
  217.    FUNCTION
  218.     This function will call the given hook for the given rastport. Is is
  219.     mainly used to do direct bitmap modifications in a locked graphics
  220.     environment. You have to support ALL known color models, so only use
  221.     this call if you really need it !!
  222.     
  223.  
  224.    INPUTS
  225.  
  226.     hook - pointer to callback hook which will be called
  227.            with object == (struct RastPort *)
  228.            and message == [ (APTR) memptr,
  229.                             (ULONG) offsetx, (ULONG) offsety,
  230.                 (ULONG) xsize, (ULONG) ysize,
  231.                 (ULONG) bytesperrow, (UWORD) bytesperpix,
  232.                 (UWORD) colormodel]
  233.  
  234.            Where colormodel is one of the following:
  235.  
  236.             PIXFMT_LUT8
  237.             PIXFMT_RGB15
  238.             PIXFMT_BGR15
  239.             PIXFMT_RGB15PC
  240.             PIXFMT_BGR15PC
  241.             PIXFMT_RGB16
  242.             PIXFMT_BGR16
  243.             PIXFMT_RGB16PC
  244.             PIXFMT_BGR16PC
  245.             PIXFMT_RGB24
  246.             PIXFMT_BGR24
  247.             PIXFMT_ARGB32
  248.             PIXFMT_BGRA32
  249.  
  250.     rport- A pointer to a cybergraphics RastPort
  251.  
  252.     tags - optional taglist, currently not used. Set it to NULL
  253.  
  254.     NOTES
  255.     Use this call only if you want high speed. Remember that you have to
  256.     handle all color models ! Do not use ANY os functions in your hook.
  257.     They would cause unpredictable results.
  258.  
  259.  
  260.     BUGS
  261.     In the current release this function only works on screen rastports.
  262.     Because of this limitation clipping is not supported.
  263.  
  264.  
  265. cybergraphics.lib/FreeCModeList                cybergraphics.lib/FreeCModeList
  266.  
  267.  
  268.    NAME
  269.     FreeCModeList -- frees a previously allocated ModeList
  270.                          (AllocCModeListTagList)
  271.  
  272.    SYNOPSIS
  273.     FreeCModeList(ModeListTags);
  274.                       A0
  275.  
  276.     void FreeCModeList(struct List *);
  277.  
  278.    FUNCTION
  279.     Frees all data which was previously allocated by AllocCModeListTagList
  280.  
  281.    INPUTS
  282.     ModeListTags - a list structure which contains all the mode data.
  283.  
  284.    RESULT
  285.     none
  286.  
  287. cybergraphics.library/GetCyberMapAttr    cybergraphics.library/GetCyberMapAttr
  288.  
  289.  
  290.    NAME
  291.     GetCyberMapAttr -- Returns information about a cybergraphics bitmap
  292.  
  293.    SYNOPSIS
  294.      value=GetCyberMapAttr(bitmap,attribute_number);
  295.     d0                     a0       d1
  296.  
  297.     ULONG GetCyberMapAttr(struct BitMap *,ULONG);
  298.  
  299.    FUNCTION
  300.         Determines information about a extended cybergraphics bitmap.
  301.     This function should be used instead of making any assumptions about
  302.     fields in the bitmap. This will    provide future compatibility.
  303.  
  304.    INPUTS
  305.     bitmap - pointer to a cybergraphics bitmap structure
  306.  
  307.     attribute_number - A number telling cybergraphics which attribute
  308.                of the bitmap should be returned:
  309.  
  310.         CYBRMATTR_XMOD returns BytesPerRow of the supplied bitmap
  311.  
  312.         CYBRMATTR_BPPIX returns number of bytes per pixel
  313.  
  314.         CYBRMATTR_PIXFMT return the pixel format of the bitmap
  315.  
  316.         CYBRMATTR_WIDTH return width of the bitmap in pixels
  317.  
  318.         CYBRMATTR_HEIGHT return the height in lines
  319.  
  320.         CYBRMATTR_DEPTH returns bits per pixel
  321.  
  322.    BUGS
  323.  
  324.    NOTES
  325.  
  326.     Unknown attributes are reserved for future use, and return (-1L).
  327.  
  328.     You should know what you are doing if you call this function !
  329.     Don't apply it on a non cybergraphics bitmap !
  330.  
  331. cybergraphics.library/GetCyberIDAttr    cybergraphics.library/GetCyberIDAttr
  332.  
  333.  
  334.    NAME
  335.     GetCyberIDAttr -- Returns information about a cybergraphics id
  336.  
  337.    SYNOPSIS
  338.      value=GetCyberIDAttr(CyberIDAttr,CyberDisplayModeID);
  339.     d0                     d0           d1
  340.  
  341.     ULONG GetCyberIDAttr(ULONG,ULONG);
  342.  
  343.    FUNCTION
  344.         Determines information about a specified displaymode id.
  345.  
  346.    INPUTS
  347.     CyberDisplayModeID - cybergraphics mode id
  348.  
  349.     attribute_number - A number telling cybergraphics which attribute
  350.                of the displaymode id should be returned:
  351.  
  352.         CYBRIDATTR_PIXFMT return the pixel format of the supplied
  353.                 screenmode id
  354.  
  355.         CYBRIDATTR_WIDTH returns visible width in pixels
  356.         CYBRIDATTR_HEIGHT returns visible height in lines
  357.         CYBRIDATTR_DEPTH returns bits per pixel
  358.         CYBRIDATTR_BPPIX should return BytesPerPixel
  359.  
  360.    BUGS
  361.  
  362.    NOTES
  363.  
  364.     Unknown attributes are reserved for future use, and return (-1L).
  365.  
  366.     You should know what you are doing if you call this function !
  367.     Don't apply it on a non cybergraphics displaymode !
  368.  
  369.  
  370. cybergraphics.library/IsCyberModeID       cybergraphics.library/IsCyberModeID
  371.  
  372.  
  373.    NAME
  374.     IsCyberModeID -- returns whether supplied ModeID is a cybergraphics id
  375.  
  376.    SYNOPSIS
  377.     result = IsCyberModeID(modeID)
  378.     D0                       D0
  379.  
  380.     BOOL IsCyberModeID(ULONG)
  381.  
  382.    FUNCTION
  383.     Returns whether the supplied ModeID is a cybergraphics.library mode
  384.     identifier.
  385.  
  386.    INPUTS
  387.     modeID -- a 32 bit display identifier.
  388.  
  389.    RESULT
  390.     result - Flag to indicate if modeID is a cybergraphics ID
  391.  
  392. cybergraphics.library/FillPixelArray     cybergraphics.library/FillPixelArray
  393.  
  394.  
  395.    NAME
  396.         FillPixelArray -- fill a rectangular area with the supplied ARGB value
  397.     starting at a specified x,y location and continuing through to another
  398.     x,y location within a certain RastPort
  399.  
  400.    SYNOPSIS
  401.     count = FillPixelArray(RastPort,DestX, DestY,SizeX,SizeY,ARGB)
  402.     D0             A1     D0:16  D1:16 D2:16 D3:16 D4:32
  403.             
  404.  
  405.     LONG FillPixelArray(struct RastPort *,UWORD,UWORD,UWORD,UWORD,ULONG)
  406.  
  407.    FUNCTION
  408.     For each pixel in a rectangular region, write the supplied color value
  409.     into the bitmap used to describe a particular rastport.
  410.  
  411.    INPUTS
  412.     RastPort -  pointer to a RastPort structure
  413.     (DestX,DestY) - starting point in the RastPort
  414.     (SizeX,SizeY) - size of the rectangle that should be transfered
  415.         ARGB  - the desired color in AARRGGBB format. Every component
  416.         allocates 8 bits of the returned longword. The coding is as
  417.         follows:
  418.  
  419.                  AA - 8-bit alpha channel component
  420.               (set it to 00 if you do not use it !)
  421.                  RR - 8-bit red component of the pixel
  422.                  GG - 8-bit green component
  423.                  BB - 8-bit blue component
  424.  
  425.    RESULT
  426.     count will be set to the number of pixels plotted
  427.  
  428.    NOTES
  429.     This function should only be used on screens depths > 8 bits.
  430.  
  431.    BUGS
  432.     In the current release this function only works on screen rastports.
  433.     Because of this limitation clipping is not supported.
  434.  
  435.  
  436. cybergraphics.library/InvertPixelArray     cybergraphics.library/InvertPixelArray
  437.  
  438.  
  439.    NAME
  440.         InvertPixelArray -- invert a rectangular area tarting at a specified x,y
  441.     location and continuing through to another x,y location within a certain
  442.     RastPort
  443.  
  444.    SYNOPSIS
  445.     count = InvertPixelArray(RastPort,DestX, DestY,SizeX,SizeY)
  446.     D0               A1     D0:16  D1:16 D2:16 D3:16
  447.             
  448.  
  449.     LONG InvertPixelArray(struct RastPort *,UWORD,UWORD,UWORD,UWORD)
  450.  
  451.    FUNCTION
  452.     Invert each pixel in a rectangular region.
  453.  
  454.    INPUTS
  455.     RastPort -  pointer to a RastPort structure
  456.     (DestX,DestY) - starting point in the RastPort
  457.     (SizeX,SizeY) - size of the rectangle that should be transfered
  458.  
  459.    RESULT
  460.     count will be set to the number of pixels plotted
  461.  
  462.    NOTES
  463.     This function should only be used on screens depths > 8 bits.
  464.  
  465.    BUGS
  466.     In the current release this function only works on screen rastports.
  467.     Because of this limitation clipping is not supported.
  468.  
  469.  
  470. cybergraphics.library/MovePixelArray     cybergraphics.library/MovePixelArray
  471.  
  472.  
  473.    NAME
  474.         MovePixelArray -- move the color values of a rectangular area of
  475.     pixels starting at a specified x,y location and continuing through
  476.     to another x,y location within a certain RastPort
  477.  
  478.    SYNOPSIS
  479.     count = MovePixelArray(SrcX, SrcY, RastPort,SrcX , SrcY ,SizeX, SizeY)
  480.     D0               D0:16 D1:16  A1      D2:16  D3:16 D4:16  D5:16
  481.  
  482.     LONG MovePixelArray(UWORD,UWORD,struct RastPort *,UWORD,UWORD,UWORD,
  483.                 UWORD)
  484.  
  485.    FUNCTION
  486.     For each pixel in a rectangular region, move the pixel value from a
  487.     specified source to a specified destination
  488.  
  489.    INPUTS
  490.     (SrcX,SrcY) - starting point in the destination rectangle
  491.     RastPort -  pointer to a RastPort structure
  492.     (DestX,DestY) - starting point in the destination rectangle
  493.     (SizeX,SizeY) - size of the rectangle that should be transfered
  494.  
  495.    RESULT
  496.     count will be set to the number of pixels moved
  497.  
  498.    NOTES
  499.     This function should only be used on screens depths > 8 bits.
  500.     The blitter can be used to move the data if the bitmap is in display
  501.     memory. This is way you should use this call.
  502.  
  503.    BUGS
  504.     In the current release this function only works on screen rastports.
  505.     Because of that limitation clipping is not supported.
  506.  
  507. cybergraphics.library/ReadPixelArray     cybergraphics.library/ReadPixelArray
  508.  
  509.  
  510.    NAME
  511.         ReadPixelArray -- Read the color values of a rectangular array of
  512.     pixels starting at a specified x,y location and continuing through
  513.     to another x,y location within a certain RastPort
  514.  
  515.    SYNOPSIS
  516.     count = ReadPixelArray(destRect,DestX,DestY,DestMod,RastPort,SrcX ,
  517.     D0              A0    D0:16 D1:16 D2:16     A1     D3:16
  518.                 SrcY ,SizeX,SizeY,DestFormat)
  519.                 D4:16 D5:16 D6:16    D7
  520.  
  521.     LONG ReadPixelArray(APTR,UWORD,UWORD,UWORD,struct RastPort *,UWORD,
  522.                 UWORD,UWORD,UWORD,UBYTE)
  523.  
  524.    FUNCTION
  525.     For each pixel in a rectangular region, write the color value to a
  526.     linear array of color values from the bitmap used to describe a
  527.     particular rastport.
  528.  
  529.    INPUTS
  530.     destRect - pointer to an array of pixels where to write the pixel
  531.                data to. The pixel format is specified in DestFormat
  532.     (DestX,DestY) - starting point in the destination rectangle
  533.     DestMod - The number of bytes per row in the destination rectangle.
  534.     RastPort -  pointer to a RastPort structure
  535.     (SrcX,SrcY) - starting point in the RastPort
  536.     (SizeX,SizeY) - size of the rectangle that should be transfered
  537.     DestFormat - pixel format in the destination rectangle
  538.                 Currently supported formats are:
  539.  
  540.                 RECTFMT_RGB  3 bytes per pixel, one byte red, one blue
  541.                              and one byte green component
  542.  
  543.                 RECTFMT_RGBA 4 bytes per pixel, one byte red, one blue,
  544.                              one byte green component and the last
  545.                                  byte is alpha channel information which
  546.                          is 0 if the board does not support alpha
  547.                                  channel
  548.  
  549.                 RECTFMT_ARGB 4 bytes per pixel, one byte red, one blue,
  550.                              one byte green component and the first
  551.                                  byte is alpha channel information. If the
  552.                                  board does not support alpha channel a 
  553.                          0 is returned for alpha channel information
  554.  
  555.    RESULT
  556.     count will be set to the number of pixels read
  557.  
  558.    NOTES
  559.     This function should only be used on screens depths > 8 bits.
  560.  
  561.    BUGS
  562.     In the current release this function only works on screen rastports.
  563.     Because of that limitation clipping is not supported.
  564.  
  565. cybergraphics.library/ReadRGBPixel          cybergraphics.library/ReadRGBPixel
  566.  
  567.  
  568.    NAME
  569.         ReadRGBPixel -- Reads a pixel from a specified location
  570.  
  571.    SYNOPSIS
  572.         color = ReadRGBPixel(RastPort,x ,y )
  573.         D0                     A0     D0 D1
  574.  
  575.         ULONG ReadRGBPixel(struct RastPort *,UWORD,UWORD);
  576.  
  577.    FUNCTION
  578.     Read the Alpha,Red,Green & Blue 8-bit color value of the pixel at a
  579.     specified x,y location within a certain RastPort
  580.  
  581.    INPUTS
  582.     rp -  pointer to a RastPort structure
  583.         x,y    - the coordinates of the pixel
  584.  
  585.    RESULT
  586.         color  - the desired color in AARRGGBB format. Every component
  587.          allocates 8 bits of the returned longword. The coding is as
  588.          follows:
  589.  
  590.                  AA - 8-bit alpha channel component
  591.               (boards which do not have an alpha channel return 00)
  592.                  RR - 8-bit red component of the pixel
  593.                  GG - 8-bit green component
  594.                  BB - 8-bit blue component
  595.  
  596.   NOTES
  597.     This function should only be used on screens depths > 8 bits. Use
  598.     ReadPixel() on 8 bit screens !
  599.  
  600.   BUGS
  601.     In the current release this function only works on screen rastports.
  602.     Because of that limitation clipping is not supported.
  603.  
  604. cybergraphics.library/ScalePixelArray   cybergraphics.library/ScalePixelArray
  605.  
  606.  
  607.    NAME
  608.        ScalePixelArray -- Scale the colors values of a rectangular array of
  609.     pixels starting at a specified x,y location and continuing through
  610.     to another x,y location within a certain RastPort (V41)
  611.  
  612.    SYNOPSIS
  613.     count = ScalePixelArray(srcRect,SrcW,SrcH ,SrcMod,RastPort,DestX,
  614.     D0               A0   D0:16 D1:16 D2:16     A1    D3:16
  615.                 DestY,DestW,DestH,SrcFormat)
  616.                 D4:16 D5:16 D6:16    D7
  617.  
  618.     LONG ScalePixelArray(APTR,UWORD,UWORD,UWORD,struct RastPort *,UWORD,
  619.                  UWORD,UWORD,UWORD,UBYTE)
  620.  
  621.    FUNCTION
  622.     For each pixel in a rectangular region, scale the color values from a
  623.     linear array of color values into the bitmap used to describe a
  624.     particular rastport.
  625.  
  626.    INPUTS
  627.     srcRect - pointer to an array of pixels from which to fetch the
  628.               pixel data. The pixel format is specified in SrcFormat
  629.     (SrcW,SrcH) - Width and Height of the source rectangle
  630.     SrcMod - The n umber of bytes per row in the source rectangle.
  631.     RastPort -  pointer to a RastPort structure
  632.     (DestX,DestY) - starting point in the RastPort
  633.     (DestW,DestH) - size of the destination area
  634.     SrcFormat - pixel format in the source rectangle
  635.                 Currently supported formats are:
  636.  
  637.                 RECTFMT_RGB  3 bytes per pixel, one byte red, one blue
  638.                              and one byte green component
  639.  
  640.                 RECTFMT_RGBA 4 bytes per pixel, one byte red, one blue,
  641.                              one byte green component and the last
  642.                                  byte is alpha channel information. If you
  643.                                  do not use alpha channel set this byte to
  644.                          0 !!!
  645.  
  646.                 RECTFMT_ARGB 4 bytes per pixel, one byte red, one blue,
  647.                              one byte green component and the first
  648.                                  byte is alpha channel information. If you
  649.                                  do not use alpha channel set this byte to
  650.                          0 !!!
  651.  
  652.    RESULT
  653.     count will be set to the number of pixels plotted
  654.  
  655.    NOTES
  656.     This function should only be used on screens depths > 8 bits.
  657.  
  658.    BUGS
  659.     In the V40 release this function only works on screen rastports.
  660.     Because of that limitation clipping was not supported.
  661.         This is fixed in V41
  662. cybergraphics.library/SwapPixelArray     cybergraphics.library/SwapPixelArray
  663.  
  664.  
  665.    NAME
  666.         SwapPixelArray -- Swap the color values of a rectangular array of
  667.     pixels starting at a specified x,y location and continuing through
  668.     to another x,y location within a certain RastPort
  669.  
  670.    SYNOPSIS
  671.     count = SwapPixelArray(MemRect,MemX  ,MemY,MemMod,RastPort, RastX ,
  672.     D0              A0   D0:16 D1:16 D2:16     A1     D3:16
  673.                 RastY ,SizeX,SizeY,MemFormat)
  674.                 D4:16 D5:16 D6:16    D7
  675.  
  676.     LONG SwapPixelArray(APTR,UWORD,UWORD,UWORD,struct RastPort *,UWORD,
  677.                 UWORD,UWORD,UWORD,UBYTE)
  678.  
  679.    FUNCTION
  680.     For each pixel in a rectangular region, swap the color values of a
  681.     linear array of color values and a bitmap used to describe a
  682.     particular rastport.
  683.  
  684.    INPUTS
  685.     MemRect - pointer to an array of pixels where to write the pixel
  686.               data of the bitmapto. The pixel format is specified in
  687.           MemFormat
  688.     (MemX,MemY) - starting point in the memory rectangle
  689.     MemMod - The number of bytes per row in the memory rectangle.
  690.     RastPort -  pointer to a RastPort structure
  691.     (RastX,RastY) - starting point in the RastPort rectangle
  692.     (SizeX,SizeY) - size of the rectangle that should be transfered
  693.     MemFormat - pixel format in the memory rectangle
  694.                 Currently supported formats are:
  695.  
  696.                 RECTFMT_RGB  3 bytes per pixel, one byte red, one blue
  697.                              and one byte green component
  698.  
  699.                 RECTFMT_RGBA 4 bytes per pixel, one byte red, one blue,
  700.                              one byte green component and the last
  701.                                  byte is alpha channel information which
  702.                          is 0 if the board does not support alpha
  703.                                  channel
  704.  
  705.                 RECTFMT_ARGB 4 bytes per pixel, one byte red, one blue,
  706.                              one byte green component and the first
  707.                                  byte is alpha channel information. If the
  708.                                  board does not support alpha channel a 
  709.                          0 is returned for alpha channel information
  710.  
  711.    RESULT
  712.     count will be set to the number of pixels swapped
  713.  
  714.    NOTES
  715.     This function should only be used on screens depths > 8 bits.
  716.     DON'T USE THIS FUNCTION WITH V40 OF CYBERGRAPHICS
  717.  
  718.    BUGS
  719.     In the current release this function only works on screen rastports.
  720.     Because of that limitation clipping is not supported.
  721.     THIS FUNCTION IS BROKEN IN V40 ... DON'T USE IT
  722.  
  723. cybergraphics.library/WritePixelArray   cybergraphics.library/WritePixelArray
  724.  
  725.  
  726.    NAME
  727.         WritePixelArray -- write the color value of a rectangular array of
  728.     pixels starting at a specified x,y location and continuing through
  729.     to another x,y location within a certain RastPort
  730.  
  731.    SYNOPSIS
  732.     count = WritePixelArray(srcRect,SrcX ,SrcY ,SrcMod,RastPort,DestX,
  733.     D0               A0   D0:16 D1:16 D2:16     A1    D3:16
  734.                 DestY,SizeX,SizeY,SrcFormat)
  735.                 D4:16 D5:16 D6:16    D7
  736.  
  737.     LONG WritePixelArray(APTR,UWORD,UWORD,UWORD,struct RastPort *,UWORD,
  738.                  UWORD,UWORD,UWORD,UBYTE)
  739.  
  740.    FUNCTION
  741.     For each pixel in a rectangular region, write the color value from a
  742.     linear array of color values into the bitmap used to describe a
  743.     particular rastport.
  744.  
  745.    INPUTS
  746.     srcRect - pointer to an array of pixels from which to fetch the
  747.               pixel data. The pixel format is specified in SrcFormat
  748.     (SrcX,SrcY) - starting point in the source rectangle
  749.     SrcMod - The number of bytes per row in the source rectangle.
  750.     RastPort -  pointer to a RastPort structure
  751.     (DestX,DestY) - starting point in the RastPort
  752.     (SizeX,SizeY) - size of the rectangle that should be transfered
  753.     SrcFormat - pixel format in the source rectangle
  754.                 Currently supported formats are:
  755.  
  756.                 RECTFMT_RGB  3 bytes per pixel, one byte red, one blue
  757.                              and one byte green component
  758.  
  759.                 RECTFMT_RGBA 4 bytes per pixel, one byte red, one blue,
  760.                              one byte green component and the last
  761.                                  byte is alpha channel information. If you
  762.                                  do not use alpha channel set this byte to
  763.                          0 !!!
  764.  
  765.                 RECTFMT_ARGB 4 bytes per pixel, one byte red, one blue,
  766.                              one byte green component and the first
  767.                                  byte is alpha channel information. If you
  768.                                  do not use alpha channel set this byte to
  769.                          0 !!!
  770.  
  771.    RESULT
  772.     count will be set to the number of pixels plotted
  773.  
  774.    NOTES
  775.     This function should only be used on screens depths > 8 bits. Use
  776.     WritePixelArray8() on 8 bit screens !
  777.  
  778.    BUGS
  779.     In the current release this function only works on screen rastports.
  780.     Because of that limitation clipping is not supported.
  781.  
  782.  
  783. cybergraphics.library/WriteRGBPixel        cybergraphics.library/WriteRGBPixel
  784.  
  785.  
  786.    NAME
  787.         WriteRGBPixel -- Writes a pixel to a specified location
  788.  
  789.    SYNOPSIS
  790.         error = WriteRGBPixel(RastPort,x ,y ,color)
  791.         D0                      A0     D0 D1 d2
  792.  
  793.         ULONG WriteRGBPixel(struct RastPort *,UWORD,UWORD,ULONG);
  794.  
  795.    FUNCTION
  796.     Write the Alpha,Red,Green & Blue 8-bit color value of the given color
  797.     to a specified x,y location within a certain RastPort
  798.  
  799.    INPUTS
  800.     rp     - pointer to a RastPort structure
  801.         x,y    - the coordinates of the pixel
  802.         color  - the desired color in AARRGGBB format. Every component
  803.          allocates 8 bits of the returned longword. The coding is as
  804.          follows:
  805.  
  806.                  AA - 8-bit alpha channel component
  807.               (set it to 00 if you dont want to use it !)
  808.                  RR - 8-bit red component of the pixel
  809.                  GG - 8-bit green component
  810.                  BB - 8-bit blue component
  811.  
  812.    RESULT
  813.     error = 0 if pixel succesfully changed
  814.           = -1 if (x,y) is outside the rastport
  815.  
  816.    NOTES
  817.     This function should only be used on screens depths > 8 bits. Use
  818.     WritePixel() on 8 bit screens !
  819.  
  820.    BUGS
  821.     In the current release this function only works on screen rastports.
  822.     Because of that limitation clipping is not supported.
  823.  
  824.